﻿// Silver.Globe, version 0.11 for Silverlight 1.1 Alpha
// Copyright © Florian Krüsch (xaml-kru.com)
// xaml-kru.com/silverglobe
// This source is subject to the Microsoft Public License (Ms-PL).
// See http://www.microsoft.com/resources/sharedsource/licensingbasics/publiclicense.mspx.
// All other rights reserved.

using System;
using System.Collections.Generic;
using SilverGlobe.Math3D;

namespace SilverGlobe.Data
{    
    /// <summary>
    /// Static class that contains the coordinates of all continent shapes.
    /// </summary>
    public static class Coordinates
    {
        #region Extension method

        /// <summary>
        /// Helper method that converts an array of raw coordinate data to 3D points on a sphere with radius 1.
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public static Point3D[] ToSphere(this Double[] input)
        {
            List<Point3D> spherePoints = new List<Point3D>(input.Length);
            Double len = input.Length / 2;

            for (int i = 0; i < len; i++)
            {
                Double longitude = 180 + input[i * 2];
                Double latitude = input[i * 2 + 1];

                Point3D pt = new GeoPosition(latitude, longitude).ToSphere();
                spherePoints.Add(pt);
            }

            return spherePoints.ToArray();
        }

        #endregion

        // America
        public static readonly Double[] Greenland = { 136.6218, 60.043725, 140.6718, 65.51874, 145.47195, 66.26871, 147.80925, 67.981275, 156.72195, 69.268725, 154.02195, 71.36874, 158.29695, 70.46874, 157.39695, 73.39374, 162.4968, 74.81871, 158.4468, 77.44374, 161.67195, 76.61871, 160.77195, 79.24374, 167.2218, 81.418725, 163.6218, 82.24371, 156.34665, 80.89371, 157.5468, 82.69371, 143.29665, 83.59371, 131.8968, 82.39374, 119.5218, 81.71874, 112.5468, 79.99371, 115.32195, 79.46874, 107.52165, 78.043725, 111.4218, 76.243725, 120.27195, 76.09374, 127.54665, 71.21871, 125.2719, 69.51879, 129.47175, 69.36876, 125.8218, 67.243725, 130.02165, 61.99371, 136.6218, 60.043725 };
        public static readonly Double[] NorthCanada = { 117.78435, 82.64376, 106.4592, 83.168775, 88.98435, 82.19376, 93.93435, 79.71876, 87.0345, 81.51876, 82.90935, 79.94376, 88.9092, 78.14376, 93.8592, 77.84379, 87.4845, 77.01876, 81.8595, 79.118775, 83.2095, 77.093775, 77.5845, 76.868775, 75.93435, 77.768775, 80.5842, 77.46876, 80.7345, 78.668775, 74.6595, 79.49376, 73.90935, 77.69376, 75.1842, 76.34376, 71.88435, 76.49379, 68.8095, 75.89376, 64.00935, 77.61879, 68.50935, 77.543775, 70.30935, 79.19379, 59.5845, 77.993775, 57.1095, 76.04379, 61.2342, 75.81879, 64.0845, 76.79376, 62.65935, 74.91879, 67.0842, 74.54376, 74.0592, 74.76876, 79.08435, 75.66876, 79.6842, 74.99376, 82.45935, 74.99376, 79.30935, 73.64376, 77.6592, 73.11879, 81.4095, 71.31879, 83.8845, 72.21879, 83.9592, 74.31876, 84.6342, 72.818775, 88.2342, 72.818775, 88.9092, 74.01879, 85.6845, 76.418775, 86.8095, 76.11876, 90.10935, 74.76876, 100.00935, 74.46879, 100.00935, 75.59379, 91.6092, 76.26879, 101.13435, 76.49379, 106.2342, 79.49376 };
        public static readonly Double[] Northamerica = { 83.18745, 28.20015, 86.98725, 30.0123, 96.58755, 30.0123, 98.9874, 25.0623, 100.18755, 25.9623, 98.68725, 31.21245, 104.8374, 35.8623, 106.03755, 40.21245, 109.3374, 41.8626, 110.6874, 44.1126, 115.33725, 43.9623, 120.28725, 46.06245, 119.2374, 47.262465, 115.6374, 46.51245, 115.93755, 48.612465, 109.63755, 48.012435, 116.0874, 50.862465, 117.8874, 49.812435, 123.13755, 51.312465, 121.33755, 48.012435, 127.18755, 47.712465, 123.13755, 54.16245, 115.48755, 60.01245, 112.0374, 58.66245, 110.38725, 60.762465, 102.88755, 62.562465, 102.43755, 58.062465, 104.98725, 54.61245, 101.38725, 54.762435, 99.8874, 51.612435, 97.6374, 55.212435, 85.4874, 59.11245, 86.08725, 61.36245, 89.38755, 63.462465, 92.2374, 64.51245, 95.08725, 67.062465, 94.0374, 63.61245, 95.68755, 62.862435, 97.93755, 64.662435, 98.9874, 69.46245, 88.0425, 69.149745, 85.9374, 71.862435, 80.83755, 68.862465, 75.88755, 70.662465, 74.98755, 73.662435, 69.88725, 72.462465, 62.23725, 73.812465, 56.38725, 74.112435, 55.18755, 72.16245, 57.88755, 71.112465, 65.6874, 70.512435, 67.18725, 68.56245, 71.68725, 68.862465, 73.48725, 65.41245, 70.78725, 67.512465, 67.63725, 67.062465, 63.4374, 68.862465, 55.63755, 70.212465, 44.68743, 69.162435, 24.137415, 71.26245, 17.987445, 69.91245, 14.08743, 68.11245, 19.637415, 66.612465, 12.437415, 65.562435, 20.987415, 63.16245, 14.687415, 63.16245, 13.487445, 60.612435, 22.037445, 58.512465, 12.587445, 53.26245, 30.73743, 59.712435, 35.23743, 60.01245, 44.837415, 57.462435, 55.7874, 47.86245, 55.93725, 42.3126, 58.9374, 35.4123, 62.3124, 33.25005, 65.2374, 27.16245, 70.13745, 22.87485, 70.56225, 23.80005, 67.0374, 28.4751, 65.2626, 31.5, 66.7125, 31.5, 68.7123, 28.20015 };
        public static readonly Double[] Caribean = { 95.68125, 22.67325, 99.28125, 23.4234, 102.231, 22.2732, 107.23095, 19.97325, 109.5309, 19.87335, 111.5811, 18.52335, 108.4311, 17.8236, 107.181, 19.3734, 106.13115, 20.2734, 102.1311, 19.52325, 102.3813, 20.6235, 99.83115, 22.0734, 97.3809, 21.6234 };
        public static readonly Double[] Middleamerica = { 68.706, 28.2015, 70.61715, 26.39385, 70.72965, 25.5312, 72.117, 24.81885, 74.31255, 22.7124, 74.89215, 19.08135, 82.65465, 15.81885, 86.5125, 16.33725, 88.092, 14.24385, 92.77965, 12.96855, 93.67965, 11.84355, 94.60485, 11.8251, 94.3173, 10.19385, 96.21225, 9.4374, 97.0047, 8.27505000000001, 98.5545, 8.14994999999999, 99.0045, 7.27515, 99.8298, 7.29990000000001, 99.8298, 8.46854999999999, 100.9548, 8.91855, 102.042, 7.5312, 103.01265, 8.6373, 101.10465, 9.8937, 99.75465, 9.14354999999999, 98.2125, 9.13724999999999, 96.4548, 10.94355, 96.4548, 13.74975, 96.9048, 14.7312, 95.6673, 16.00605, 91.54215, 15.93135, 92.592, 19.71855, 94.11255, 21.73725, 91.51245, 21.53745, 89.17965, 20.5812, 89.1126, 19.03725, 87.9048, 18.40635, 85.7124, 18.4374, 83.1123, 20.2374, 82.5795, 22.30605, 82.71225, 25.13745, 83.1888, 28.19835 };
        public static readonly Double[] Southamerica = { 102.04695, 7.53885, 102.5046, 3.51270000000001, 99, -0.75330000000001, 99, -2.1033, 100.0125, -2.92815, 98.58735, -4.27815000000001, 98.81235, -5.7033, 104.0031, -14.436, 109.6749, -18.18585, 108.8046, -30.2877, 104.90445, -47.28735, 105.1218, -52.40025, 109.30455, -54.8874, 115.50465, -54.8874, 113.1219, -53.75025, 110.80485, -50.3874, 112.122, -49.80015, 114.40485, -47.3877, 112.572, -46.04985, 114.40485, -44.7876, 118.7046, -39.18735, 122.3046, -38.08755, 123.70455, -35.1873, 126.10485, -34.58745, 131.3046, -28.98765, 131.90445, -25.38765, 135.50445, -22.88745, 138.3048, -22.98735, 141.1047, -17.6877, 141.1047, -13.08735, 145.5048, -8.48745, 144.9045, -5.48729999999999, 140.50485, -2.88765000000001, 137.20455, -2.88765000000001, 132.1047, -0.28755000000001, 129.4047, 2.6127, 128.80485, 4.4127, 125.7048, 6.41249999999999, 122.80455, 6.01244999999999, 118.7046, 10.8126, 112.2048, 10.51245, 108.7047, 12.7125, 106.40475, 11.21265, 104.90445, 11.41245, 103.01265, 8.63594999999999 };
        
        // Europe 
        public static readonly Double[] ContinentalEurope = { 178.18425, 43.3314, 173.00925, 43.7814, 171.5841, 42.8814, 170.75925, 38.8314, 171.88425, 37.2564, 174.58425, 36.50625, 178.40925, 36.95625, 180.43425, 39.0564, 179.4591, 39.65625, 181.1844, 41.1561, 183.13425, 41.9814, 183.2094, 43.3314, 187.1091, 43.3314, 188.8344, 44.38125, 190.4094, 44.0064, 190.4094, 43.25625, 192.528, 41.62815, 194.0094, 41.3064, 194.5719, 40.59675, 196.18425, 40.03425, 196.2342, 39.0501, 195.5592, 38.31885, 193.94685, 37.7937, 193.14045, 38.0376, 192.72825, 37.4562, 195.1092, 36.4437, 195.29685, 37.8126, 195.6717, 38.07495, 197.2467, 38.99385, 196.96545, 39.9123, 197.45325, 40.3812, 198.4842, 40.0437, 197.32815, 41.2533, 196.2216, 41.85315, 195.28425, 41.9283, 192.13425, 44.6814, 193.48425, 45.50625, 195.8094, 43.70625, 199.4841, 42.2064, 199.8594, 40.33125, 202.03425, 36.8811, 204.6591, 38.30625, 202.1094, 40.4064, 203.84685, 40.22505, 206.06535, 40.93425, 209.1717, 40.72185, 209.1906, 41.0967, 207.67185, 41.64075, 207.65925, 43.03125, 211.1841, 46.556235, 213.28425, 45.95625, 214.18425, 44.6814, 215.6094, 44.9064, 215.3844, 46.40625, 217.9341, 46.63125, 217.8594, 44.6814, 222.31845, 41.0796, 228.80925, 38.08125, 230.2344, 40.4811, 227.23425, 44.5311, 228.9591, 46.556235, 230.0373, 46.142145, 233.1594, 47.006235, 229.3344, 67.631265, 226.54035, 66.65157, 226.69065, 68.39532, 223.9344, 68.329665, 224.71245, 66.285945, 216.43425, 64.18125, 213.73425, 66.43125, 220.4091, 66.356235, 221.60925, 67.55625, 212.60925, 69.956235, 210.5091, 69.881265, 207.8091, 71.38125, 205.18425, 71.081235, 200.7594, 70.106265, 197.2341, 69.13125, 194.9841, 67.931235, 192.2094, 65.08125, 188.9091, 63.50625, 187.4844, 62.456265, 185.6466, 61.837515, 185.2344, 59.999985, 185.94675, 58.237515, 188.4591, 58.275, 189.1719, 59.137515, 191.23425, 59.00625, 191.7216, 57.825, 192.3219, 57.15, 192.47175, 56.325015, 192.13425, 55.8, 191.34675, 55.724985, 191.23425, 54.862515, 192.1716, 54.599985, 192.6594, 55.875015, 193.48425, 55.499985, 194.49675, 55.575, 194.9094, 56.456235, 197.08425, 56.512485, 197.08425, 58.481235, 198.6219, 59.250015, 198.65925, 60.731235, 197.08425, 61.03125, 198.7344, 63.431235, 200.1591, 63.50625, 202.1841, 65.606265, 205.63425, 65.512485, 201.6594, 62.906265, 201.69675, 60.899985, 202.3344, 60.13125, 207.8469, 60.449985, 209.1591, 59.90625, 207.7344, 59.212485, 206.6094, 59.437485, 203.60925, 59.2875, 204.6591, 57.356235, 202.1094, 57.806235, 200.90925, 54.881235, 199.33425, 53.981235, 198.0594, 55.18125, 194.83425, 53.531235, 193.25925, 54.73125, 191.68425, 53.681265, 189.9594, 54.712485, 190.55925, 56.30625, 190.33425, 57.6, 188.53425, 57.225015, 187.9344, 56.174985, 188.6841, 53.83125, 185.9841, 53.531235, 182.0844, 50.68125, 180.0594, 49.33125, 178.3341, 49.631265, 178.85925, 48.806235, 175.25925, 48.43125, 177.8094, 47.456235, 179.3844, 44.15625 };
        public static readonly Double[] England = { 180.9594, 50.91876, 176.85945, 50.66874, 174.80925, 49.968765, 176.0094, 51.418755, 175.2093, 51.718725, 175.95945, 53.518725, 177.30945, 53.218755, 176.40945, 55.018755, 175.60935, 54.868725, 175.25925, 55.768725, 174.4092, 56.018745, 174.2094, 57.31875, 175.5594, 58.518765, 177.2091, 58.86873, 176.4594, 57.86874, 178.1595, 57.468735, 177.30945, 56.16873, 178.7094, 55.118745, 179.9595, 54.218745, 180.20925, 53.01873, 181.80945, 52.618725, 180.9594, 50.91876 };
        public static readonly Double[] Ireland = { 173.997, 53.937495, 173.8845, 52.237485, 172.1592, 51.887475, 171.4842, 51.224985, 169.9218, 52.037505, 170.5968, 52.887465, 170.19675, 53.18748, 170.2593, 54.049995, 171.68445, 54.474975, 172.00935, 55.318725, 174.2094, 55.318725, 174.6216, 54.187515, 173.997, 53.937495 };
        public static readonly Double[] Mediteranean = { 188.20935, 40.77495, 188.6967, 39.1563, 189.44685, 39.3687, 189.55935, 41.0562, 189.22185, 41.22495, 189.42795, 42.0498, 189.3717, 43.0812, 189.10935, 42.7248, 188.64045, 42.55605, 188.99685, 41.46885, 188.99685, 41.1687 };

        // Asia        
        public static readonly Double[] ContinentalAsia = { 259.67655, 10.2474, 257.4, 8.16074999999999, 254.0844, 15.5187, 252.88425, 19.86885, 250.4844, 20.9187, 246.7341, 25.26885, 237.8844, 25.8687, 236.925, 27.3609, 234.8685, 26.61075, 231.93135, 27.86085, 229.93425, 30.21885, 227.9844, 29.31885, 230.8185, 25.3359, 230.91885, 26.1486, 231.6186, 26.04825, 231.76845, 25.1361, 231.6312, 24.1983, 233.70615, 24.02325, 236.0844, 25.56855, 239.99985, 22.1859, 235.04985, 16.82325, 223.731, 12.77325, 222.90615, 16.2234, 219.231, 20.7234, 219.08205, 22.4721, 215.3844, 27.81855, 213.6591, 27.7686, 211.60935, 30.41865, 214.6842, 31.21875, 216.2844, 35.91855, 211.3344, 36.96885, 208.78425, 36.2187, 206.2872, 39.76695, 209.17485, 40.7232, 209.1843, 41.0985, 215.00595, 42.02325, 219.4344, 41.01885, 222.3279, 41.07015, 228.79665, 38.0889, 230.80905, 36.74385, 233.6625, 36.9171, 232.3593, 42.49395, 230.21235, 44.41725, 230.031, 46.14525, 233.15625, 47.015595, 229.3344, 67.62339, 239.481, 69.7734, 231.7185, 71.498385, 237.86865, 75.6234, 248.8185, 76.9734, 248.33115, 76.260915, 239.3685, 74.573415, 235.50615, 72.0234, 241.506, 69.960915, 248.6844, 68.918715, 250.7841, 73.26873, 253.9341, 71.768745, 268.63425, 76.118715, 282.16845, 77.610915, 271.18125, 79.5609, 274.2561, 80.948385, 293.56875, 76.9734, 293.6844, 73.868715, 307.9341, 73.26873, 309.6063, 70.7859, 315.531, 71.4609, 315.531, 71.449605, 322.2747, 73.0422, 349.9749, 69.11721, 358.43085, 69.57342, 369.93105, 66.37347, 367.23105, 64.17342, 360.9999, 65.817225, 360, 62.673435, 350.83125, 60.27345, 344.2248, 60.27966, 342.1998, 58.29219, 343.3248, 56.00466, 337.06215, 51.09219, 335.331, 56.273445, 344.63745, 61.96716, 340.58745, 61.21719, 337.5999, 61.69221, 333.83115, 59.073435, 323.37495, 59.41719, 315.49365, 54.703485, 315.49365, 54.6984, 321.4341, 53.618715, 320.5341, 48.818745, 314.98425, 43.26885, 312.1344, 43.11855, 307.78425, 39.8187, 309.3435, 35.6859, 306.3438, 34.59825, 306.6813, 37.29825, 305.4438, 39.43575, 299.0844, 39.66885, 302.6844, 38.0187, 299.5344, 35.46855, 302.6313, 30.54825, 300.9438, 27.51075, 297.43425, 23.1687, 290.8188, 21.32325, 290.4435, 18.62325, 288.6813, 18.62325, 289.33425, 21.8187, 285.99975, 19.65015, 285.9498, 18.3501, 289.1844, 15.81885, 289.35, 11.65005, 284.89995, 8.29979999999999, 284.742, 10.24155, 280.34235, 13.2417, 279.3249, 10.07325, 280.5498, 8.40015, 280.69965, 7.24995, 281.74995, 7.1001, 283.7313, 5.36715, 284.4, 0.649799999999999, 285.64965, -1.70009999999999, 287.1999, -2.25, 286.4313, -5.6016, 290.20005, -6.60015, 293.99985, -6.79995, 294.44985, -7.74990000000001, 301.6998, -8.59994999999999, 294.89985, -8.85015, 286.4997, -7.00020000000001, 282.0438, -3.67020000000001, 279.0999, 1.25009999999999, 275.29965, 5.3001, 280.95615, 2.96729999999999, 280.14975, 6.3, 278.2998, 8.3502, 277.4997, 16.69995, 274.84965, 15.60015, 274.5999, 18.7002, 271.9341, 21.96855, 267.73425, 21.06855, 260.6841, 15.66855 };
        public static readonly Double[] Indonesia1 = { 288.93105, 1.17359999999999, 290.63115, -3.42675000000001, 296.03115, -3.62654999999999, 297.93105, 0.173249999999996, 299.4858, -0.9666, 298.95165, -3.20264999999999, 299.8602, -3.6648, 300.1311, -5.92649999999999, 300.75165, -4.17734999999999, 300.75165, -2.82735, 302.0265, -4.85235, 303.264, -4.96485, 301.83885, -2.07764999999999, 303.33915, -0.877499999999998, 301.38885, -1.17765, 300.4515, 0.547650000000004, 303.939, 0.359999999999999, 304.91415, 1.44765000000001, 303.52635, 0.810000000000002, 299.92635, 1.29735000000001, 299.60775, -0.741600000000005, 298.0233, 0.355499999999992, 297.93105, 3.07350000000001, 297.93105, 4.37354999999999, 299.83095, 5.0733, 297.13095, 7.37325, 293.031, 3.07350000000001 };
        public static readonly Double[] Indonesia2 = { 302.3811, 7.77329999999999, 305.38125, 5.97329999999999, 306.8811, 7.37325, 305.9811, 9.37350000000001, 304.3809, 9.77355, 305.38125, 12.77325, 304.0812, 13.7736, 301.6809, 14.8734, 301.6809, 16.4736, 302.481, 18.6732, 300.98115, 18.6732, 299.781, 16.4736, 300.7809, 12.8736, 302.1813, 13.9734, 303.88095, 13.0734, 304.3809, 11.0736, 302.88105, 10.2735, 303.4809, 8.87354999999999 };
        public static readonly Double[] Japan = { 310.8312, 30.8484, 309.63105, 33.17355, 312.8562, 35.5734, 316.3059, 35.72325, 316.9062, 37.22355, 318.4812, 36.9234, 320.1309, 39.47355, 320.1309, 43.14825, 322.23105, 45.098415, 321.8562, 47.0484, 322.5312, 50.6484, 321.8562, 51.848415, 322.0812, 53.648415, 323.2062, 54.2484, 324.1809, 49.823415, 322.9812, 48.32343, 323.2809, 47.123415, 322.8309, 46.52343, 322.7562, 45.098415, 325.60605, 43.59825, 323.58105, 42.62355, 320.88105, 42.7734, 320.43105, 41.27355, 322.1559, 40.44825, 320.8059, 36.77355, 320.5062, 35.27325, 315.70605, 33.84855, 312.8562, 33.24825 };
        public static readonly Double[] NewGuinea = { 323.23095, -9.42660000000001, 325.73115, -7.4268, 329.23125, -10.62675, 327.9312, -6.8265, 332.3313, -4.8267, 327.231, -5.72670000000001, 324.73125, -3.82679999999999, 318.231, -1.3266, 315.83115, -3.32640000000001, 313.83135, -1.42649999999999, 313.731, 0.173249999999996, 311.43105, -0.526499999999999, 312.7311, -3.2265, 318.33135, -5.52645000000001, 318.231, -7.22655, 316.93095, -8.4267, 320.43105, -7.82640000000001 };
        public static readonly Double[] Taiwan = { 301.16385, 25.2162, 299.96415, 23.4162, 300.28905, 22.49145, 301.06395, 22.2165, 301.8888, 25.1163 };
        public static readonly Double[] SriLanka = { 260.56395, 9.59129999999999, 259.78905, 7.96635000000001, 259.91415, 6.61635, 261.189, 5.84144999999999, 261.9891, 7.46640000000001 };

        // Africa
        public static readonly Double[] Africa = { 189.9216, 33.975, 191.1969, 35.40015, 190.1466, 37.5561, 187.8966, 36.8064, 181.5966, 36.8064, 178.4844, 35.17515, 174.24675, 35.4564, 170.30925, 31.91265, 170.3466, 29.925, 167.0094, 27.75015, 162.9594, 21.6, 164.1969, 18.07515, 162.8469, 14.7564, 163.5966, 11.6064, 167.4216, 7.425, 172.1844, 4.53735, 178.07175, 5.0625, 184.7844, 6.56235, 185.9841, 4.53735, 190.1466, 4.55624999999999, 189.54675, -0.543599999999998, 194.18445, -10.50615, 191.9844, -14.81265, 191.79675, -17.94375, 194.49675, -22.2939, 194.94675, -26.3439, 198.54675, -31.5936, 198.20925, -33.26265, 199.8216, -34.38765, 207.2466, -33.24375, 210.69675, -30.3939, 212.94675, -27.5436, 212.9841, -25.12485, 215.42175, -24.15015, 214.74675, -19.1439, 220.93425, -15.11235, 219.5469, -4.44375000000001, 224.98425, 1.91249999999999, 228.92175, 5.32485, 230.60925, 9.1125, 231.3216, 12.0375, 224.3844, 10.42515, 219.24675, 15.89985, 219.0969, 17.4564, 217.2969, 19.1061, 217.1844, 21.63735, 215.0469, 24.60015, 213.84675, 27.50625, 211.59675, 30.45015, 202.4091, 32.70015, 200.2716, 31.95, 199.5966, 30.5064 };
        public static readonly Double[] Madagascar = { 229.39965, -12.00015, 226.59975, -15.79995, 224.14995, -16.8498, 224.14995, -19.1502, 223.4997, -23.85, 225.1998, -25.5501, 227.5497, -24.34995, 229.95, -13.64985, 229.39965, -12.00015 };

        // Australia
        public static readonly Double[] Australia = { 306.48105, -13.62645, 302.68125, -16.5267, 301.68135, -19.2267, 294.78105, -21.3264, 293.58135, -25.8264, 295.8813, -31.0266, 295.68105, -33.6267, 298.08135, -34.8264, 300.5811, -33.8265, 303.68115, -33.7266, 311.3811, -31.0266, 315.7812, -34.32645, 317.98125, -32.7267, 317.4813, -34.6266, 320.481, -37.82655, 325.5813, -38.72655, 330.1812, -36.82665, 333.28125, -30.0267, 332.8812, -25.12665, 328.08105, -19.82655, 325.5813, -18.5265, 324.981, -15.32655, 321.9813, -11.3265, 320.78115, -17.6265, 316.38105, -14.9265, 317.08125, -12.42675, 312.68115, -10.5264, 310.581, -11.1267, 309.98115, -13.8267, 308.4813, -14.32665 };
        public static readonly Double[] Tasmania = { 325.18125, -40.8267, 328.581, -40.62645, 327.5811, -43.02675, 326.08125, -42.9264 };
        public static readonly Double[] NewZealand = { 346.98105, -45.5265, 348.9813, -46.4265, 354.4812, -41.7267, 354.78135, -40.8267, 355.78125, -41.22675, 358.78095, -37.5264, 356.68125, -37.5264, 353.08125, -34.32645, 354.78135, -37.1268, 353.5812, -39.2265, 355.4811, -40.32675, 350.38125, -43.02675 };
        public static readonly Double[] Antarctica = { 0, -77.8374, 28.15002, -77.4252, 50.23755, -73.4877, 79.15005, -74.7252, 77.35005, -70.5249, 103.53735, -72.83745, 122.9499, -61.82505, 120.73725, -74.8377, 141.5376, -78.03765, 171.2502, -69.92505, 219.8502, -69.6249, 232.7499, -64.8252, 255.55005, -68.7249, 267.5502, -64.52505, 278.6499, -65.7252, 320.35005, -65.7252, 351.5499, -70.82505, 339.5502, -78.3252, 360, -77.88735, 0, -77.8374 };
    }
}
